Buyer Scans QR Code to verify details
Manufacturer adds new Mask data to Blockchain + IPFS using data from Arduino
Transporter scans QR code to get Mask IF. Sends a transaction to smart contract to signal that the package has been delivered.
Buyer gets all the Information from Smart Contract about the Mask, after scanning QR Code. Mask's authenticity is verified.
The payment for Mask is sent directly to the parties involved, without any Middlemen!
In the current Pandemic it is very important to verify that people are using Original Masks. With the new business opportunity, the scammers are producing fake masks to earn some money but harming the lives of innocent individuals.
What it does
This is a Supply chain using RSK Blockchain and IoT to track and verify the source of masks.
There are 3 players in the supply chain: Manufacturer, Transporter, and Buyer.
Manufacturer: Produces new Mask. Using Weight sensors connected to Arduino, the weight is displayed onto the webpage. Using Image Capturing Device (here a webcam) the image of the product at the manufacturing site is taken and uploaded to the decentralized storage: IPFS. All this data is saved onto the blockchain and a new Mask Id is generated.
Transporter: Transports from Manufacturer to Buyer. On successfully delivering the package, the transporter scans the QR Code to sign on the Blockchain that the package has been delivered. Using GPS sensor, the application is able to record the current location onto the blockchain as well.
Buyer: The buyer receives the package with QR Code. He/she then scans it using the DApp. On successful scan, the details of the package are fetched from the Blockchain and displayed to the user. The user then pays in RSK tokens to the Smart Contract which then splits the payment to Manufacturer and Transporter in predefined amount.
The Major advantage here is that the user can verify the origin and authenticity of the package received, thanks to the blockchain. Also, the Manufacturer and Transporter get Paid Directly to their Addresses without any middlemen taking their unnecessary cuts. This peer-to-peer transaction is what makes blockchain successful.
How I built it
Connected the weight measuring sensor to Arduino via jumper cables. The data is transmitted to computer via USB cable to Nodejs server. The Frontend is in React.js which fetches weight data from Server. Web3.js is used to communicate with the (testnet) RSK Blockchain.
Challenges I ran into
One major problem was that due to the current scenario, it was very difficult to collect hardware components to get the IoT section of project to get working. I managed with whatever the circuit I had left lying around. It was the first time I integrated Blockchain with IoT, so it was a learning experience.
Accomplishments that I'm proud of
That I can finish the Proof of Concept of this big project before the deadline.
What I learned
RSK Blockchain and Arduino IoT integration.