Saturday, July 30, 2011

PC bootloader app bug

I just noticed that there's a major bug in the PC bootloader application I released a couple of weeks ago. I have fixed the bug, and you can get the latest version here.

Monday, July 25, 2011

New product added to store...

So we now have an FT232R USB-to-serial breakout board. You can use it to connect your project's UART to your computer over USB, and it looks just like a serial port!


Sunday, July 17, 2011

New PC-side bootloader version...

So I wanted to let everybody know I've released a new version of the PC-side bootloader. The new version adds a terminal, so now you don't have to keep switching back and forth to program the device. Also, the code works natively in Linux (tested with Ubuntu 11.04). You just have to run the executable with mono (not wine, it doesn't work this way for me...this is how it gets run if you just double click it). You can download it here.

Check out a screen shot here:

EDIT: After typing the post, I thought about a few things to add. First, you can leave the terminal open while you program the device (you don't have to close the terminal first to program the device). The app will handle opening/closing the serial port automatically.

Also, I have a very small shell script in the bin directory that Linux (and Mac OS, I would presume) users can use to run the executable with mono. To run the command, open up a terminal and then cd to //nrf24lu1_bootloader_pc/nrf24lu1_programmer/bin/Debug and run the script nrf24lu1_programmer (*NOT* nrf24lu1_programmer.exe).

Finally, if for some reason you have to forcibly kill the program in Linux, you will have to manually delete the lock file for the serial port you are using. The lock file location and name will be listed in the output box of the programmer app.

Labels: ,

Monday, July 11, 2011

New products

Yes, I know that I'm not terribly prolific in postings. But here are a few new products to tickle your fancy!

This is a breakout of Nordic's nRF24Z1 audio streamer IC. It allows inputs up to 24 bits at 96 kHz, and can output up to 16 bits at 48 kHz (which is still higher than CD quality). It can handle both S/PDIF and I2S input and output, and doesn't actually require a microcontroller to work (it can read its settings from an external EEPROM).

And the obligatory RP-SMA version, too!

For those interested in capacitive touch sensors, this one should fit the bill! It has a built-in sensor "button", and it only needs 4 pins to work - VCC, GND, a mode pin, and an output (to your microcontroller, LED, etc.)!

Wednesday, October 13, 2010

New products and library update

It's been a few months, but I've got a few new products to offer!

This is the breakout for the 24-pin version Nordic's nRF24LE1 microcontroller. It's just like the 32-pin variety, except it has 7 GPIO pins and 7 ADC inputs (plus a smaller footprint and lower cost).

Don't forget to check out the RP-SMA version, too!

For those interested in the SDKs, I have updated both the nRF24LE1 SDK and the cryptography SDK to version 2.0. This version includes adding the LGPL 2.1 license for those confused about what the license may be (hat tip to ksinkar for recommending it in a comment here).

With this release, there has also been a fairly major change in the compilation sequence. For those compiling/linking against the libraries, it is only a directory change, but with this change I have (hopefully) made it easier to compile both libraries for different compilers and different chip targets. For example, it should be able to add nRF24LU1 support into this library and add a different compile target now. The include directory is in the same place, but the lib directory has been moved to /_target_sdcc_nrf24le1/lib (you will have to update your link step to point to this directory instead of the old one).

Those are the only changes for the cryptography SDK, but the 2.0 release of the nRF24LE1 SDK also contains a few bug fixes plus support for timer 2. The timer 2 code is a bit experimental, so there will likely be a 2.1 release to fix any issues I find with it, and there's also a little remaining functionality I want to add.

For anyone interested, I am considering making an Arduino Uno board clone that contains the 48-pin version of the nRF24LE1. It has plenty of I/O and ADC inputs, the only problem is that it is *not* 5V-tolerant on either GPIO or ADC inputs, so I am contemplating either adding 5V-tolerant circuitry either to the main board or putting it on a shield that would plug into the main board. Any suggestions would certainly be appreciated!

Labels: , , ,

Monday, June 21, 2010

nRF24LE1 SDK with AES for SDCC

For all of those interested, I have been working on an SDK for the nRF24LE1 chip to use with SDCC. I mainly wrote it for my purposes, but I want to release what I have written. The code is public domain, but I would definitely appreciate it if you linked back to the site if you use it in a project! The nRF24LE1 SDCC SDK lives here.

As it stands, not all of the hardware systems have been implemented (the most glaring omission is probably I2C). Also, some of the subsystems have not been fully tested (the power control block being one of them). If there are any bugs, feel free to let me know.

For those interested, there is a second SDK that I'm releasing (currently set up to build with SDCC for the 24LE1, but can be reconfigured). I have fully implemented AES in this SDK, as well as ported my ARC4 implementation (and made it object-oriented, as well). That library can be found here. It is released under the same terms as the nRF24LE1 SDK.

The AES library can be configured to use the nRF24LE1's built-in AES hardware accelerator or to use an included library function that does the Galois multiplication in software. This means that you can also use the same AES implementation with other microcontrollers than the 24LE1, since it doesn't tie you to using the hardware accelerator. This should make it easier if you're using the 24LE1 as a data collection node that reports information wirelessly to a more powerful central microcontroller, but you want the central microcontroller to also be able to encrypt/decrypt AES data.

If you want to use these libraries, you have to let SDCC know where to find the header files and libraries. For the compile step, you should add "-I [PathToLibrary]/include" (without quotes) to your command line. For the link step, you should add "-L [PathToLibrary]/lib" (without quotes) to your command line. Replace "[PathToLibrary]" with whatever the path is to the top level of the library on your system (including the top level folder, which would be either nrf24le1_sdk or cryptography).

Labels: , , ,

Monday, November 30, 2009

10% Cyber Monday Discount Coupon

We're pleased to announce a 10% discount off your entire order for Cyber Monday! There is no minimum or maximum order total, but the coupon is limited to one redemption per customer and in-stock items. Just enter coupon code "DECM" (without the quotes) at the end of your checkout to redeem!