Arduino Support for codeBit (w26)?

Hello, I have one of those new LittleBits Code Kit (w26). The board seems to be powered by a Atmel SAMD21 (which is also in the Arduino Zero). I would like to use the Arduino development environment (https://www.arduino.cc/en/Main/Software) instead of provided LittleBits Code Kit App, however I have not been able to find a board in the “Board Manager” that works. I expected that one of the Arduino SAMD Boards would work but I have not found one that does. Anyone has figured this out?

Thanks,
Stefano

Hi Stefano @stelo, welcome to the forum !
Interesting question…
Maybe the Littlebits support team could answer , just send a ticket with your question to the support team at https://support.littlebits.cc/hc/en-us/requests/new?ticket_form_id=28986

:grinning:

Alex, thanks for your reply. I submitted a ticket. I will share the reply.

Cheers,
Stefano

1 Like

I submitted a ticket.

Megan Walsh suggested to use the Leonardo board in the Arduino IDE, but it does not work with the w26 codeBit. She wrote “The codeBit was designed for use with the Code Kit app so it may not work or be buggy with the Arduino IDE. I believe what you are trying to do may be theoretically possible. However, we do not intend for the codeBit to interface with the Arduino IDE.”

It is very disappointing to be stuck with the Code Kit app, which is very limited. I was expecting more from littleBits. They do not seem to be interested in opening the codeBit to the Arduino IDE.

Stefano

Hi Stefano @stelo,
Disappointing indeed…
I do not own a Code Kit. I tried to use the code kit app with the Arduino w6 and that’s also a dead end street…
:sweat:

That is disappointing, but I’m now curious. What advantages does the code bit have over the W6 Arduino bit? https://shop.littlebits.cc/products/w6-arduino

I do not know the differences between w6 and w26. From my investigations, it seems that w26 is based on an Atmel SAMD21 (which is also in the Arduino Zero).

Thanks. So, I guess the follow up question would be is there a specific project your are wanting to do using the w26 and the IDE that could not be accomplished with the w6? Or is it just a curiosity as to why the IDE wouldn’t work with the w26 when the IDE does work with the w6?

Nothing specific. I just bought the codeBit. I liked the LED display.

Ah, OK. Yeah that display is really cool. I bet you might be able to use the w6 to control the LED display. Adafruit has an Arduino library, https://github.com/adafruit/Adafruit_LED_Backpack for LED matrixes that works with the Arduino for the Feather backpacks, https://learn.adafruit.com/adafruit-led-backpack. It works with a number of MCU’s including the ATSAM21D. Maybe there’s a lead there?

I have the inverse question: can I use the CodeBits editor to program my w6? That’d be pretty awesome for the kids, especially with the CodeBit app support. If not, is there a firmware update that could upgrade my w6? I see some repos on GitHub for each but am not sure they include enough to build the complete firmware.

You would have to burn the arduino zero bootloader to the chip. Then you probably would be able to program it in the IDE. It would also make you not be able to program it in the app. I found a tutorial on how to do that here: “www.youtube.com/watch?v=VQWhjzLoHB8”. I would’ve made the hyperlink but the site said new users can’t use hyperlinks so I put parentheses to ruin the link. You can download the bootloader here: “github.com/arduino/ArduinoCore-samd”.

Hope you get it working!

The ArduinoBit uses the ATMEGA32U4 chip. Similar to Arduino Leonardo or Arduino Micro

As was pointed out earlier, the CodeBit uses ATSAMD21 chip. Similar to Arduino Zero

Both are very different from each other in terms of capabilities. ATSAMD21 has tons more memory, but it is also more difficult to do things like softwareserial on ATSAMD21, which is relatively easy to do on ATMEGA32U4 based platform.

In theory you could burn the boot loader onto the ATSAMD21 chip on your CodeBit, but you might have compatibility issues. Also none of the ports would be clearly labeled on the board (e.g. Analog pins A1, A2, A3, versus Digital D5, D6), so it would be a challenge to interface your source code with external sensors/peripherals, you’d have to have some type of reference chart to translate the pin numbers.

It would be a neat idea but it would require a lot of effort to get it working.