warning: Creating default object from empty value in /home/hplus/ on line 33.
Telling computers to do things.
jwatte's picture

Talking to Dynamixel servos from a NVIDIA Jetson (or other host computer)

It's pretty common, among people who want to talk to Dynamixel servos like the MX-28 or MX-64 or AX-12, to try to use a built-in UART on whatever computer they're using. Raspberry Pi, Odroid, NVIDIA Jetson are just a few common choices. The first thing an engineer will wonder is: "will I break something if I just tie TX and RX together on my UART?"

Actually, tying TX and RX will work fine, as long as you know to receive and discard the bytes you are sending yourself. There are two other problems, though:

jwatte's picture

How to rebuild and flash a kernel for NVIDIA Jetson TX2

I wish this brief overview had been available when I first got my TX2, for how to rebuild a kernel and flash it.

jwatte's picture

Some examples of images to classify

The question came up: Why would I go through the trouble of training a neural network, rather than just checking "is the ground in front of me gray-colored?"

jwatte's picture

Machine learning and computer vision for autonomous rover racing -- step one

Some interesting news on my project to apply machine vision to the subject of autonomous rover racing.
I've been renting GPU processing power on the GPU processing power spot market (yes, there is such a thing) and training neural networks.

jwatte's picture

How to harden a publicly facing server

The question came up: "How would I go about 'Hardening' the host server?"

In theory, hardening is a simple mixture between good configuration, good software, and good operational practice.

jwatte's picture

Outline of a Scalable Web Backend

Here's a common question for newcomers to mobile game development, web game development, and similar systems:

How shall I design my application for scalability? And what do you mean by application, for that matter? Do you mean the whole iOS app/PHP/mySql system, or something else?

jwatte's picture

How do I dependency?

So, if I were to build a brand new OS, not based on Linux kernel necessarily, what should packaging look like?

jwatte's picture

Look what I came across

In the distant past, I made an effort to get various virtual world vendors to attempt to interoperate, such that various virtual worlds could be interconnected.
That would have been cool! Unfortunately, the competetive landscape ended up not supporting such an effort.

Here's a copy of the IETF draft that I posted at the time:

jwatte's picture

Arduino ICSP programming header pinout

I've been wanting to put the ICSP 6-pin header onto a soldered Arduino circuit.

This is so that I can make "emergency" fixes even if I've removed the Atmega MCU from the USB-powered board I normally use to prototype and program. Also, even if I socket it on the destination board, moving it too many times back and forth risks significant damage to the pins!

jwatte's picture

boost::asio async_read_until may read more than the specified data!

This took me a while to track down. I figured I'd document it for posterity, and anyone else trying to do asynchronous networking in C++ using boost::asio. I'm using Ubuntu Server 10.04 LTS with gcc/g++, which uses boost version 1.40. The reason is that the "bytes transferred" argument to the callback is the number of bytes until the separator is found, but more bytes than that are decoded from the socket into the input stream.

Syndicate content