avatar

Liquid Soulder

Member Since: May 25, 2018

Country: United States

Profile

Neptune the Grey

Take a look at Cyclic Redundancy Checks beyond just copy/pasting an implementation. The underlying mathematical principles are very interesting, and you can try it yourself in Python!

Continue reading

Naturally, having just fired up the new Transparent Graphical OLED display, I wondered what it would take to make a 3D display. Here's the story of the struggle, as told in an intentional allusion to interpretive alliteration.

Continue reading

Introducing SparkFun's new microcontroller graphics library: HyperDisplay! What is it, why did we make it and how can I learn more about it? All your musings will be concluded right here, right now.

Continue reading

The motivation behind the "Three Quick Tips for Using U.FL" tutorial

Continue reading

Details of a silly problem with a silly solution: How to not overwrite your outgoing SPI data buffer when using the Arduino core libraries

Continue reading

SparkFun Edge Hookup Guide

September 26, 2019

Get to know your Edge board, including both the hardware features for you to utilize as well as how to get talking to it.

SparkFun 9DoF IMU (ICM-20948) Breakout Hookup Guide

June 27, 2019

How to use the SparkFun 9DoF ICM-20948 breakout board for your motion sensing projects. This breakout is ideal for wearable sensors and IoT applications.

TFT LCD Breakout 1.8in 128x160 Hookup Guide

April 11, 2019

This TFT LCD Breakout is a versatile, colorful, and easy way to experiment with graphics or create a user interface for your project.

Using SparkFun Edge Board with Ambiq Apollo3 SDK

March 28, 2019

We will demonstrate how to get started with your SparkFun Edge Board by setting up the toolchain on your computer, examining an example program, and using the serial uploader tool to flash the chip.

Transparent Graphical OLED Breakout Hookup Guide

March 7, 2019

The future is here! Our Qwiic Transparent Graphical OLED Breakout allows you to display custom images on a transparent screen using either I2C or SPI connections.

Everything You Should Know About HyperDisplay

February 20, 2019

This is a tutorial to go in-depth about the SparkFun HyperDisplay Arduino Library.

Three Quick Tips About Using U.FL

December 28, 2018

Quick tips regarding how to connect, protect, and disconnect U.FL connectors.

SparkFun LoRa Gateway 1-Channel Hookup Guide

November 15, 2018

How to setup and use the LoRa Gateway 1-Channel in Arduino.
  • That functionality is not built-in, but you could add it yourself relatively easily. https://github.com/sparkfun/SparkFun_HyperDisplay/issues/2

  • Sorry this is not well documented - text is for the most part designed to be handled in the layer just above HyperDisplay (e.g. by calling the drawing functions to generate characters). Thankfully, though, my friend insisted that HD include a default font. So it should suffice to use myTOLED.print(string) to show text. You can use myTOLED.setTextCursor(x0, y0) to position the top-left corner of the next character in pixel units. myTOLED.resetTextCursor() will place the next character at the default location (which is (0,0) for most displays)

  • My pleasure! There are a few ways, some more precise than others. One is to use a multimeter in the continuity mode and touch both sides of the jumper. There should be no tone emitted if they are indeed separate.

    Another way you can do it is by visually inspecting -- this is easier if you cut the jumper in two places (right along the edge of either pad) and then 'flick' the remaining piece of copper out of there. Sort of like how you chop a tree with an axe... Should leave a large visible clear area.

    Using an exacto knife or square razor blade is easiest for me. Other tools are too blunt (figuratively and literally).

    Finally if those methods don't work there is one more way to tell. By symptoms of the board not working. Each jumper has the function explained in the schematic (PDF available on documents tab of the product page). Say, for example, that the I2C lower address bit jumper was not cut - then you could tell by seeing the device respond to I2C calls at the un-modified address. Other jumpers might have less distinct symptoms but they will at least be clues.

    Fire away questions! We're here to help out and I love it when a cool project comes through.

  • Yeah totally! That would make it good for use in a breadboard. Just make sure you have the right jumpers to go from the breadboard to your microcontroller :)

  • Hmm as far as I know nobody has done that conversion yet. I wonder if there might be any comparable Python libraries out there. If there are then you could just use the lower-level layers of Hyperdisplay to inform the design of your own driver. Good luck!

  • Nice catch, thanks ;)

    Fixed with this commit: addfd5b

    Using scalar multiplication added in this commit: d2d3754

    Though I wonder if changes will get picked up in this embedded widget?

    Yup - I was so preoccupied with how cool it felt to overload the left shift operator that I forgot to multiply by the scalar bit values.

  • Hey there - for SPI you will need to cut all 4 of the jumpers on the back side of the board. Once you've done that you will also need to connect all the SPI pins as labelled on the reverse side of the PCB. They are GND, 3V3, MOSI, SCLK, D/C and CS. All of them are required.

    Will you use the Arduino library as a reference for your Python code?

    By the way here's the section of the hookup guide that explains SPI connections (below I2C connections): https://learn.sparkfun.com/tutorials/transparent-graphical-oled-breakout-hookup-guide/hardware-hookup

  • Admittedly I've been a little uncomfortable with the idea of hashing because (afaik) it is a many-to-one operation and nobody seemed concerned about it.. I'm very relieved to hear that you indeed had to check vectors that yielded the same CRC. Cool application too, thanks for sharing!

  • Thanks for sharing those other resources! Also you are right -- looks like http://ross.net/crc/download/crc_v3.txt is working again (must have been down for maintenance)

  • Hi, I just did a quick search of the datasheet and found no instances of 'mesh' however the module is listed as Bluetooth 5 and Bluetooth Mesh FAQs point out that "Mesh networking operates on Bluetooth Low Energy (LE) and is compatible with core specification version 4.0 and higher." which tells me that it should be possible.

    We're looking at providing SW support for Bluetooth Mesh networking in the future but I can't guarantee a timeframe so if you want you can go ahead and try it out!

No public wish lists :(