... | ... | @@ -39,6 +39,7 @@ Some familiarity with either Make::Blocks or MicroPython languages for the Micro |
|
|
* Radio Signal Basics
|
|
|
* [Click here for information on radio signals](https://www.infoplease.com/encyclopedia/science-and-technology/computers-and-electrical-engineering/electrical-engineering/radio/transmission-and-reception-of-radio-waves)
|
|
|
* [Click here for Micro::Bit radio basics](https://makecode.microbit.org/reference/radio)
|
|
|
|
|
|
[[top](#top)]--[[up](#description)]
|
|
|
|
|
|
## Materials
|
... | ... | @@ -127,6 +128,7 @@ Serve(pin16).write_angle(95) # Turn motor again |
|
|
radio.send("Hello")
|
|
|
</pre>
|
|
|
</details>
|
|
|
|
|
|
[[top](#top)]--[[up](#materials)]
|
|
|
|
|
|
## Setup
|
... | ... | @@ -190,7 +192,7 @@ radio.onDataPacketReceived(({ receivedString }) => { |
|
|
<summary>
|
|
|
<a>Click here for solution.</a>
|
|
|
</summary>
|
|
|
Solution here
|
|
|
The medium difficulty lockbox requires two wireless keys. First key("0101") must be sent over radio group 2, and then the second key("1001") must be sent over radio group 5.
|
|
|
</details>
|
|
|
|
|
|
### Hard Lockbox
|
... | ... | @@ -199,16 +201,13 @@ radio.onDataPacketReceived(({ receivedString }) => { |
|
|
<summary>
|
|
|
<a>Click here for solution.</a>
|
|
|
</summary>
|
|
|
Solution here
|
|
|
The hard lockbox expects the key("100110") but advances its radio group by 1 every 15 seconds until it reaches the maximum radio group and then begins again at zero. Good luck catching it!
|
|
|
</details>
|
|
|
|
|
|
[[top](#top)]--[[up](#setup)]
|
|
|
|
|
|
## Next Steps
|
|
|
<p id="exploration"></p>
|
|
|
* Download and flash the code for either of the Hard Lockboxes, and try to write a key that will open them.
|
|
|
1. Hard-Lockbox1 requires two wireless keys. First key("0101") must be sent over radio group 2, and then the second key("1001") must be sent over radio group 5.
|
|
|
2. Hard-Lockbox2 expects the key("100110") but advances its radio group by 1 every 15 seconds until it reaches the maximum radio group and then begins again at zero. Good luck catching it!
|
|
|
* Were other people's keys opening your safe? Why is that? How do you prevent that?
|
|
|
* Can you think of a better way to secure your lockbox? If so, implement that in the language of your choosing and challenge your partners to crack it!
|
|
|
* Use both languages, either MicroPython for the lock box and Javascript/Blocks for the key or vice-versa.
|
... | ... | |