smart parking lot help request with rak wisblock and blues notecard

Build a smart parking IoT system with RAK WisBlock & Blues Notecard. Covers hardware, LoRaWAN, NB-IoT, and Datacake integration.

In large parking facilities, communicating with the parking attendant or seeking help when something goes wrong can be challenging. If the parking lot is short-staffed or entirely unstaffed, customers may have no means to reach out for assistance.

The Smart Parking Lot Help Request project features a human-machine interface (HMI) with three buttons, providing users with solutions for three common scenarios:

  • Case 1: Need Parking Assistance
  • Case 2: I Lost My Car Keys
  • Case 3: The Parking Lot Exit is Obstructed

When a user selects a case through the HMI, the manager will receive an email notification detailing the event and the specific case that requires attention.


The hardware utilizes a modular approach provided by WisBlock, and the complete firmware is fully developed and available on the official GitHub repository. The IoT data visualization platforms are also cloud-ready. Additionally, we will replicate the project developed by Blues Wireless, incorporating a button and an LED for the interface.

By the end of this tutorial, you will be able to collect environmental data and transmit it wirelessly using two of the most widely used IoT communication protocols: LoRaWAN and NB-IoT.


What a Smart Parking Lot Help Request Does

This solution enables users in parking facilities to request assistance by pressing one of three buttons on a physical HMI. The selected case is transmitted wirelessly via LoRaWAN or cellular networks (NB-IoT/LTE-M/CAT-1) to a cloud dashboard, triggering an automatic email notification to the parking manager with the event details and case type. The system operates without requiring on-site staff presence or a dedicated communication infrastructure.

🔑
KEY TAKEAWAYS
  • Asynchronous communication, between users and parking staff becomes reliable when triggered by a physical, single-action interface rather than a phone call or manual lookup.
  • A three-button HMI covers the most disruptive parking scenarios: needing assistance, losing car keys, and a blocked exit.
  • LoRaWAN and cellular connectivitycan run as independent paths, ensuring alert delivery even when one network is unavailable.
  • Modular WisBlock hardwarereduces deployment time by eliminating the need for custom PCB design in facility-based IoT installations.
  • Solar and battery powermake the system viable in covered or off-grid parking structures where wired power is impractical.
  • The alert logic is not limited to parking lots and can be adapted for factories, warehouses, or any facility where staff response time is critical.



 

Figure 1: Smart Parking Lot Help Request Solution

 

Use Case: Smart Parking Lot Help Request

Communicating with the person in charge of a parking lot can be difficult and tedious, especially in multi-level facilities. Identifying the staff on site can also be complex, as they may not wear uniforms. Using a simple method of asynchronous communication to request assistance from parking staff can streamline processes, such as asking for help with lost items or addressing unforeseen events like a traffic jam.

This IoT solution addresses these issues quickly and efficiently. It can be applied not only in parking lots but also in factories, where you can receive notifications and engage in asynchronous communications. This IoT solution is customizable to meet the specific requirements of your company.

 

System Components and Hardware Requirements

Hardware Components

Figure 2: Necessary Hardware

Gateway:

Back-End Services 

Modular Hardware Assembly Using WisBlock

The hardware adopts a modular approach provided by WisBlock. The complete firmware is developed and available in the official GitHub repository, and the IoT data visualization platforms are cloud-ready. Additionally, we will replicate the project developed by Blues Wireless by using JSON data to access the information.

Connecting the WisBlock elements is straightforward:

  1. Plug the core into the core slot and sensor RAK1906 on the Sensor Slot A. In this instance, you will use the RAK19001 motherboard, but here you can select another board.
  2. The Blues Notecard can be connected via the WisBlock Blues Carrier Module, which should then be plugged into the baseboard's IO slot.
  3. Finally, to prepare your product for deployment, you can use the WisBlock enclosure designed for this purpose.
  4. If you want to 3D print the custom enclosure for this project, you can find the RAKBox-UO150x100x45(D1)_F3D v3 on Thingiverse here.
Figure 3: Final project installation view 

 

Figure 4: Final project closed case


 Now that the devices are connected, you can begin programming.  

⚠️
IMPORTANT

The Notecard requires a peak current of 2 A to send data. The VDD pin of the WisBlock cannot provide this current, so it is recommended to use a battery or connect an additional USB cable to the Notecard during your project testing.

Blues Notecard Hardware Assembly and Integration 

After completing the instructions outlined in the hardware configuration and uploading the code provided by Blues on GitHub to the notecard, the final assembly is shown in the image below:

Figure 5: Final Result BluesWireless Version

Firmware Development and Configuration

The code can be downloaded from our official GitHub repository. It was developed using Visual Studio Code and PlatformIO, which are two widely used tools for programming firmware. 

In case the libraries are not available on Platform IO, you can find them from the following sources:

If you need more information about how to configure and code your WisBlock setup with Platform IO, check the following guide for Setting up WisBlock on PlatformIO

Data Transmission and Cloud Integration

Cloud Integration and Data Flow

This section explains how button press events from the RAK4631 are transmitted to the cloud using either LoRaWAN or cellular connectivity. Each path requires proper network configuration and payload decoding to ensure that help request cases are accurately logged and displayed in Datacake, and that email notifications are triggered correctly.

End-to-End Data Flow Architecture

This project supports two cloud paths:

LoRaWAN

LoRaWAN Data Flow

Cellular

Cellular Data Flow

 

For LoRaWAN, TTN applies the payload decoder and forwards the structured JSON to Datacake via a webhook. For cellular connectivity, the Blues Notecard sends structured data to Notehub, which then routes it to Datacake.

Authentication operates independently at each layer:

  • LoRaWAN devices authenticate to TTN using Over-The-Air Activation (OTAA).
  • TTN uses a Datacake API token for webhook delivery.
  • The Notecard authenticates to Notehub using its device UID.

The firmware encodes the button press event and case identifier into the payload. TTN or Notehub manage routing and delivery, while Datacake stores, visualizes, and triggers the email notification to the parking manager based on the received field values.

 

LoRaWAN Data Transmission via TTN

LoRaWAN communication can be achieved through a public network (such as Helium) or by deploying a private LoRaWAN gateway. In this guide, a private LoRaWAN network is used.

To enable LoRaWAN data transmission, the following are required:

This process is straightforward and can be completed in just a few minutes. For a step-by-step configuration guide, refer to the RAK7268V2 gateway documentation.

After the successful configuration and connection of the gateway to the TTN LNS, use the given payload decoder.

 

TTN Payload Decoder

function Decoder(bytes, port)
{  var decoded = {};
  if (bytes[0] == 1)
  { decoded.buttonpressed = ((bytes[1] << 8) | (bytes[2]));      
      return decoded;
  }
 else if (bytes[0] == 5) {
// add more sensor data formats here
//        } else if (bytes.[0] == xx) {
    }
} 

Cellular Data Transmission via Blues Notehub

Create an account on the Notehub page and then create a new project. For a detailed guide, you can review the Blues documentation to see the process step by step.

Blues Payload Decoding and Data Structure

🗒️
NOTE

This payload decoder is used when the transmitted data is sent via the Blues Wireless hardware.

 function Decoder(request) {
    var data = JSON.parse(request.body);
    var device = data.device; // this is your Device UID
    var decoded = {};
    decoded.buttonpressed = data.body.buttonpressed;   
    return [
       {
             device: device,
             field: "buttonpressed",
             value: decoded.buttonpressed

       },
    ];
 }

 

Cloud Integration and Data Visualization with Datacake

The connection to Datacake will be established by integrating the TTN and Notehub with the platform. You can create two devices in DataCake or configure a single device to receive data from multiple platforms. 

  1. After configuring your device on the Datacake platform, check if the payload fields are being received correctly. If so, start configuring the field with the appropriate name and variable. 
Figure 6: Datacake Fields Configuration

 

  1. If everything has been set up correctly, you should see a data history display similar to the following image: 
Figure 7: Datacake History of Data

 

After completing the Notehub and TTN integration using Datacake’s official guides, your dashboard should look similar to Figure 8:
 

Figure 8: Datacake Dashboard Result

You can now send data to DataCake using LoRaWAN or NB-IoT/BLE/Cat-1. Next, let’s implement the complete Blues application.
 

Why WisBlock Is Suitable for Smart Parking Lot Help Request Project

Figure 9: Comparison RAKwireless vs BluesWireless


 Hardware Design and Build Quality

  • Production-Ready: Not just a prototype, this is a finished product ready for real-world use.
  • Modular Design: Easy and fast to set up thanks to WisBlock's plug-and-play modular architecture.
  • Clean & Professional: Produces a polished, compact final product with minimal assembly.
  • Space-Efficient: Small form factor ideal for installations with limited space.

Firmware and Developer Experience

  • Developer-Friendly Firmware: Compatible with Arduino and PlatformIO; no need for complex IDEs.

Network Flexibility and Integration

  • Multi-Network Communication: Supports LoRaWAN and cellular connectivity (NB-IoT, LTE-M, CAT-1).
  • Quick Integration with Dashboards: Easily connected to IoT platforms; no advanced front-end/backend coding required.

Availability Considerations

  • Stock Notice: Some components used in Blues' reference solution may no longer be available.

Summary 

As presented in this tutorial, WisBlock is a modular hardware solution developed by RAKwireless that simplifies the development of industrial-grade IoT applications. When paired with Blues Wireless components, it enables rapid deployment without the need for a custom PCB design and offers the following advantages:

  • Plug-and-Play Hardware: No need to design custom PCBs. Just stack the modules and go.
  • Industrial Application Ready: Designed for reliable use in professional and commercial environments.
  • Prebuilt Firmware: Core functionality is already developed and ready for deployment, saving time and effort.
  • Developer-Friendly: Works seamlessly with platforms like Arduino and PlatformIO.

FAQs

Q1: The Notecard fails to transmit data during testing. What's causing this?

The Blues Notecard requires a peak current of up to 2 A during transmission. The VDD pin on the WisBlock baseboard cannot supply this level of current, which likely causes the Notecard to brown out mid-transmission. To resolve this during testing, power the Notecard separately using either a LiPo battery connected to the RAK19001 or a dedicated USB cable plugged directly into the Notecard. This issue is not related to firmware.

Q2: My RAK7268V2 gateway is online, but no uplinks are appearing in TTN. Where should I look first?

Start by confirming that the gateway is registered in TTN and shows as "Connected" in the Console. Next, verify that the RAK4631 is joined to the correct AppEUI, DevEUI, and AppKey for your TTN application. If the join is successful but no data is being received, check that the payload decoder is applied to the correct port. Additionally, ensure that the RAK4631 is transmitting on a frequency plan that matches your gateway's regional settings.

Q3: The e-paper display is not updating after a button press. Is this a wiring or firmware issue?

First, confirm that the E-Paper Module (Solomon Systech Limited) is properly seated in the correct WisBlock slot on the RAK19001 baseboard, as a loose or misaligned connection is the most common cause of this issue. If the seating is correct, check that the SPI pins are properly configured in your PlatformIO build for the RAK4631 target. Additionally, e-paper displays have a finite refresh cycle and can appear frozen if refresh commands are sent too rapidly. Review the display driver's minimum refresh interval in the Adafruit library documentation.

Q4: Can this project run entirely without a LoRaWAN gateway, using only the Blues Notecard for connectivity?

Yes. The RAK4631 firmware and the Blues Notecard function as independent communication paths. If you lack access to LoRaWAN infrastructure, you can deploy using only the RAK13102 and Notecard for NB-IoT, LTE-M, or CAT-1 connectivity. The Datacake dashboard is designed to receive data from either or both sources. Simply omit the TTN configuration steps and rely solely on the Notehub-to-Datacake route.

Q5: The solar panel doesn't seem to be keeping the battery charged in the field. What should I check?

The RAK19001 baseboard includes a solar charging circuit, but effective charging depends on panel orientation, local irradiance, and the transmission duty cycle of the Notecard and RAK4631. First, ensure that the solar panel connector is properly seated in the baseboard's solar input. Next, estimate your average current draw, as frequent NB-IoT transmissions can be power-hungry. If the panel's wattage is marginal for your deployment environment (e.g., covered parking structures with limited light), consider reducing the transmission frequency in the firmware.


 



 

 

Updated