Skip to content

Instantly share code, notes, and snippets.

View 708yamaguchi's full-sized avatar

Naoya Yamaguchi 708yamaguchi

View GitHub Profile
@708yamaguchi
708yamaguchi / odom-extractor.l
Last active April 25, 2024 13:29
PR2 follow visual odometry
#!/usr/bin/env roseus
(ros::load-ros-manifest "nav_msgs")
(ros::load-ros-manifest "apriltag_ros")
;; (unless (boundp '*is-recording*)
;; (setq *is-recording* nil))
(unless (boundp '*recorded-odom*)
(setq *recorded-odom* nil))
(unless (boundp '*rarm-wrench-local*)
@708yamaguchi
708yamaguchi / receive_image.ino
Last active April 1, 2024 09:37
Receive and draw image on AtomS3
// M5Stack==2.0.7
// M5AtomS3==0.0.3
#include <M5AtomS3.h>
// LovyanGFX version is 1.1.12
#define LGFX_M5ATOMS3
#include <LovyanGFX.hpp>
#include <LGFX_AUTODETECT.hpp>
static LGFX lcd;
@708yamaguchi
708yamaguchi / send_image.py
Created April 1, 2024 09:36
Compress and send image to USB serial (AtomS3)
#!/usr/bin/env python3
from io import BytesIO
from PIL import Image
import serial
import sys
import time
import numpy as np
def convertToJpeg(im):
@708yamaguchi
708yamaguchi / imu_spectrum.launch
Created March 30, 2024 15:36
Visualize imu spectrum
<launch>
<node pkg="rosbag" type="play" name="play_rosbag"
args="/home/naoya/Downloads/on_table.bag --loop" />
<group ns="raw">
<include file="$(find audio_to_spectrogram)/launch/data_to_spectrum.launch">
<arg name="data_topic" value="/imu"/>
<arg name="expression_to_get_data" value="m.linear_acceleration.x" />
<arg name="data_sampling_rate" value="200" />
@708yamaguchi
708yamaguchi / mpu6886.c
Last active March 29, 2024 05:30
Read MPU6886 from Radxa via C
#include <stdio.h>
#include <stdint.h>
#include <unistd.h>
#include <fcntl.h>
#include <sys/ioctl.h>
#include <linux/i2c-dev.h>
#include <time.h>
// See Circuitpython code
@708yamaguchi
708yamaguchi / send_ip_address_i2c1.py
Last active March 25, 2024 08:38
Radxa and PiSugar
#!/usr/bin/env python3
# Mainly copied from
# https://github.com/iory/i2c-for-esp32/blob/master/examples/radxa_with_atom_s3/radxa_send_string_for_display.py
import os
import socket
import time
import board
@708yamaguchi
708yamaguchi / radxa_gpioinfo_manually_enabled.txt
Created March 23, 2024 11:45
GPIOH_5, GPIOH_6, GPIOH_7を手動でenableしたときのgpioinfoの結果
rock@radxa-zero:~$ gpioinfo
gpiochip0 - 85 lines:
line 0: unnamed unused input active-high
line 1: unnamed unused input active-high
line 2: unnamed unused input active-high
line 3: unnamed unused input active-high
line 4: unnamed unused input active-high
line 5: unnamed unused input active-high
line 6: unnamed unused input active-high
line 7: unnamed unused input active-high
@708yamaguchi
708yamaguchi / radxa_gpioinfo.txt
Last active March 23, 2024 10:39
正常なradxaも、23, 24番ピンが壊れているRadxaもgpioinfoの結果は同じだった。
rock@radxa-zero:~$ sudo gpioinfo
gpiochip0 - 85 lines:
line 0: unnamed unused input active-high
line 1: unnamed unused input active-high
line 2: unnamed unused input active-high
line 3: unnamed unused input active-high
line 4: unnamed unused input active-high
line 5: unnamed unused input active-high
line 6: unnamed unused input active-high
line 7: unnamed unused input active-high
@708yamaguchi
708yamaguchi / grasp-apriltag.l
Last active March 19, 2024 13:23
PR2 grasps apriltag block. See also apriltag_detection_4k.launch
(require "package://pr2eus/pr2-interface.l")
(unless (boundp '*ri*)
(pr2-init))
(unless (boundp '*tfl*)
(setq *tfl* (instance ros::transform-listener :init)))
(defun get-marker-pose (id)
(setq base-to-marker
(send *tfl* :lookup-transform
(format nil "base_footprint")
@708yamaguchi
708yamaguchi / illumination_invariant.py
Created March 19, 2024 11:17
Test code for illumination invariant apriltag detection (WIP)
from copy import deepcopy
import math
from cv_bridge import CvBridge
import rospy
from sensor_msgs.msg import Image
import numpy as np
# See
# https://github.com/AprilRobotics/apriltag/blob/e6cd3c7afdc23814f38a6b537904a41c393fc305/example/apriltag_demo.c#L172-L184
# https://github.com/AprilRobotics/apriltag/issues/235