Here you'll find all the extra bits & bobs that are essential to complete the swag bag of any modern maker! We have a huge number of items that will help fill out your maker tool kit, satisfy your cabling requirements or even boost your connectivity and productivity.
Cases, cases, cases!! Here is our extensive range of fantastic cases and enclosures for your maker movement activities. Choose from the slick & sleek, bold & colourful or weird & wonderful. No hobby project is complete without the perfect case to complete the look and fit the application, and here you should have no problem at all in finding the enclosure that is right for you!
Here at Pi Supply, we have our roots in the open-source and educational values provided by the open source community. The Raspberry Pi is such a fantastic educational tool, and these kits open up even more possibilities for anyone to learn about electronics and programming.
We carry a large range of power supplies and power solutions which cater to any need that you might have in your maker adventures. Whether you just need a standard mains supply, to be able to make your projects portable, or something a bit more heavy duty, we've got you covered so you never get caught short.
Inside this part of the shop you can find all the bits and pieces you need for your prototyping needs. Here you can kit out your maker station with tools and consumables, as well as other components such as headers, sensors and accelerometers to bring all those epic ideas to life!
Here you can find the range of everyone's favourite single board computer! The revolutionary Raspberry Pi has brought more possibilities within the grasp of developers than ever before, and here you can get your hands on the board that will bring that next idea to life. The Raspberry Pi has come to us in many shapes and sizes, but whichever model you want or need, this platform is guaranteed to pack a punch!
Take a look at all the original products we have to offer here at Pi Supply! Whether you are looking for self-solder kits or fully assembled HATs, you can explore new horizons with Pi Supply, and do even more to unlock the potential of your Raspberry Pi. Check out our range for LED & IR toys, ePaper applications, power solutions and much more to expand your range of projects.
Pi SupplyGetting Started with the micro:bit LoRa Node
Getting Started with the micro:bit LoRa Node
Our IoT micro:bit LoRa Node allows you to create an inexpensive LoRa node, compatible with The Things Network, in conjunction with a BBC micro:bit or other single board computers. This board allows quicker prototyping as it has the LoRa stack on the chip. Add sensors, buttons and more to complete your LoRa network.
Uses RAK811 LoRa Radio with full LoRaWAN Stack embedded
Supports LoRaWAN Connections and LoRaP2P Modes.
u.FL connector and onboard antenna allowing different antennas to be used or integrated into boxes with external antennas.
Also adds 6 Extra GPIO Pins controllable via the UART including 1 pin which can read analogue sensors!
Low power – uses less than 50mA During transmission
What you need
BBC micro:bit board
micro:bit LoRa Node
Micro USB cable
AA Battery pack (optional)
The BBC micro:bit will simply slot into the edge connector on the LoRa node. It is important to ONLY insert the micro:bit in the correct way otherwise you will risk shorting the pins and possibly damaging both boards in the process. Placing the LoRa node flat on a surface with the edge connector on the top you can slide in the micro:bit with the LED metric facing upwards.
Once the editor has loaded, next click the cog icon to the left of the microsoft logo and then extensions
In here at the top box type in “Iot LoRa Node“
Press enter to search and click the iot-lora-node package
You should now see a tab for IoTLoRaNode in the middle of the editor
IoT LoRa Code Blocks
Our Makecode package has a selection of blocks used to communicate and build payloads to send over LoRa. Data is built in the Cayenne LPP Format allowing quick decoding by The Things Network and easy integration into the Cayenne console.
You will have to first run this block as it’s own program.
As the boards are multi-region you will require to first run this block to set the Region that you are in, drag the Set LoRa Region block into the On Start and from the drop down select your region.
Then download this to your micro:bit by clicking the download button. Once you see a tick you should be ready to go.
Next remove the block from your program as it may cause issues if in with other blocks.
Note: You will only have to do this once, unless you then want to change region again the board will remember this setting.
This block is used to configure the LoRa Node with the device address, network session key and application session key from the things network console. It also allows the spreading factor to be changed.
Note: Currently the Makecode package only supports ABP activation.
Add Digital Value Block
This block is used to add a boolean / digital value (True or False).
You can transmit a manually set true or false value or you can drag in boolean value blocks to transmit if a button is pressed or the result of logic operations.
Add Analogue Value Block
This block allows you to transmit a value between 0 and 254, as an analog value it’s compatible with analog values produced by the microbit itself.
Add Light Value
Similar to the add analogue value, this block tells the things network it is a light sensor and will format appropriately. Ideal with use of the built in light level function or external sensors via the I2C Breakout.
Add Temperature Value
Once again similar to the analogue and light values, this block is designed to transmit temperature values and will automatically format it with the Cayenne LPP to decode in degrees. Ideal for use with the temperature function.
For all value blocks
As you can see there is the option to set which channel the block transmits on. This is so that you can set each value to its own unique channel so after rebooting it’ll always stay in the same order. While it will still transmit if all values are on the same channel this may cause some issues. Currently the software supports building a payload of up to 9 channels.
Transmit LoRa data block
This block when ran will then transmit all of the data added to the payload string using the Add value blocks. Once transmitted it will then reset the payload string to blank ready for it to be repopulated.
Please note: If you are constantly looping the transmit block you will need to add a delay of approximately 5000ms in your code to prevent issues.
Creating a Simple program
To begin we need to setup our microbit lora node with the correct keys to login to The Things Network
First drag the Initialise LoRa Radio block into the on start block
Next we need to fill out the contents of this block from the device data from the Things Network Device Overview Tab
Copy over the following into the Microbit program – To copy click the clipboard icon next to the key. The keys will be hidden as standard.
Device address into the Device Address Field
Network Session Key (NwkSKey) into the network session key
App session Key (AppSKey) into the app session key field
Leave SF (Spread Factor) at Seven.
Your program should now look like the following
Now we’re going to add the code to transmit a simple boolean value when we press the A button on the micro:bit:
Click the input category tab and then drag the “On button A Pressed” block into the workspace
Next from the IoT LoRa Node category drag the “Add Digital Value false on channel: One” block
And then from the IoT LoRa Node category drag the “Transmit LoRa Data” block underneath the Add Digital Value Block.
Finally click on the false and change this to true. This way when the button is pressed it’ll build the payload with a message saying it detected a true value and adds it to channel One of our message.
Your code should look like the following
And we’re ready to test our program!
Click on Download
If the automatic downloading setup correctly it’ll automatically program the microbit and you should see the micro:bit after a few seconds say LoRa ready.
If not it’ll download the file. Drag this over to your Microbit’s virtual USB Drive.
Once the board has displayed “LoRa Ready” press the A button to transmit your message!
You should then be able to go to your TTN Console, click on the Data tab and see the data which has been transmitted.
And if that worked correctly you have successfully transmitted a basic packet using your microbit!
As you can see the payload automatically decoded to detect that it was a digital input, on channel 1 of a value of 1 (True).
Next we’re going to add a new add Analogue Value block in-between the add digital value and Transmit LoRa Data blocks. To do this simply drag from the IOT LoRa Node tab the Add Analog value block.
For this we then need to change the channel to Two, and you can put an analogue value of your choice in.
Next click download and either let the web browser flash the micro:bit or copy the file over. And then test by pressing the A button.
You should now see a new payload with a digital in and an analogue value!
Finally we’re going to add in the code to transmit the Microbit’s temperature sensor. As our library is designed around the Cayenne Low Power Protocol we can use the Add Temperature Value block instead. While the temperature is an analogue value by using the temperature block it will automatically format it to Degrees C.
To do this from the IOT LoRa Node library drag in the Add Temperature Value block.
Change it to channel 3
Then from the Input library drag the temperature circle into the area where you can put the value.
Your code should now look like this
Once again click download, run the code on the Microbit and press the A Button to transmit. If successful you should see a line like the following on your TTN Console!