RoadTest: Klimate Board for the BBC micro:bit
Author: andyforeverest
Creation date:
Evaluation Type: Development Boards & Tools
Did you receive all parts the manufacturer stated would be included in the package?: True
What other parts do you consider comparable to this product?:
What were the biggest problems encountered?:
Detailed Review:
I tested this board using Makecode, Micropython and Arduino IDE.
Using Microsoft Makecode
In order to install the extensions for this board, select "Advanced" -> "Extensions" -> type in "Kitronik". The two extensions are: kitronik-klimate and kitronic-rtc.
Kitronik Klimate has only three blocks: read temperature (in C and F), read pressure (in Pa and mBar), read humidity. They are pretty easy to use.
Kitronik RTC has blocks that set and read year, month, day, hour, minute, seconds. Again, very easy to use. The only issue that I had was setting the year: only the last two digits of the year should be used, not all four of them (the slider has values between 0 and 99)
A simple code to test the functionality of the board:
Conclusion: it is really intuitive to use the Klimate board with Makecode. I highly recommend this approach!
Using Micropython
I wanted to recreate the same program using Micropython.
For the RTC, there is a Micropython library at https://github.com/KitronikLtd/micropython-microbit-kitronik-rtc. I tested the code using the online Python editor for microbit. I had an error at line 56, but changing the code from tens = decNumber / 10 to tens = decNumber//10 , I was able to run the code.
For the BME280 - Initially, when I looked on the Kitronik page for the Klimate board (https://www.kitronik.co.uk/5636-klimate-board-for-the-bbc-microbit.html) at the Questions section, the official answer was that there was not going to be a Python library for the BME280, as the code it is too large for the microbit. However, it seems that Kitronik did post the code at
https://github.com/KitronikLtd/micropython-microbit-kitronik-klimate. I tested it in the online Python editor and it is working, but I doubt some more functionality could be added to it.
Conclusion: I was able to set and read the date and time from the MCP7940 RTC and read the BME280 sensor, but not at the same time. There isn't enough space for both programs.
Using Arduino IDE
I connected an OLED display to the Klimate board. Now I have the following connections:
- I2C - BME280 Environmental Sensor (I2C address: 0x76)
- I2C - MCP7940 RTC (I2C address: 0x6F)
- I2C - SSD1306 OLED display (I2C address: 0x3C)
I used the following libraries:
Adafruit_SSD1306, Adafruit_GFX - for the display
MCP7940 (https://github.com/SV-Zanshin/MCP7940) - for the RTC
I also used the example at Micro:bit and bme280 environmental sensor example | Microbit learning for the BME280.
I was able to display the date, time, temperature and relative humidity (I am also reading the barometric pressure, but there was not enough space to display it on the 128x64 display). The whole program fits into 22% of the program memory - plenty of space left for extra functionality!
Conclusion: all functions of the board can be accessed with Arduino IDE. Moreover, a multitude of options might be added (different outputs etc), as the memory is less than a quarter full.
Top Comments
Hello, Steve,
You are right - it is indeed not a plug-and-play solution. At least, not as quick as Makecode or Micropython. However, this is only a one-time deal, because after setting it up, it is a smooth…
I can't see your images. I think this might be related to a bug on the element14 platform. Can you try editing your review and reposting? Thanks
Is everything working now?