Korg Volca Sample Hack Mod

When I bought my Volca Sample I was disapointed with MIDI implementation – one channel for each track? Ehh? Immediately I grebbed Arduino and made MIDI adapter. Some time later I found mod with switch for mute. Today the cup ran… I added switch for memory too.

MIDI adapter is based on:

https://github.com/mmaisterrena/Volca_Simple

Points for solder switches connections – D301, D307 and common point:

Mounting switches:

Mounting Arduino Nano:

USB connector for programming:

DIN connector for alternative MIDI in:

+5V supply for Arduino stolen from capacitor:

All together:

Final look:

e2fsck autostart problem

e2fsck autostart problem

[root@CentOS ~]# cat /etc/e2fsck.conf
[problems]

# Superblock last mount time is in the future (PR_0_FUTURE_SB_LAST_MOUNT).
0x000031 = {
preen_ok = true
preen_nomessage = true
}

# Superblock last write time is in the future (PR_0_FUTURE_SB_LAST_WRITE).
0x000032 = {
preen_ok = true
preen_nomessage = true
}

Install Windows 7 Or Windows 8 From USB Drive

Run command line with admin rights,

DISKPART

LIST DISK

SELECT DISK 1

CLEAN

CREATE PARTITION PRIMARY

SELECT PARTITION 1

ACTIVE

FORMAT FS=NTFS Quick

ASSIGN

EXIT

________________

D: CD BOOT and hit enter.Where “D” is your DVD drive letter.

CD BOOT

BOOTSECT.EXE /NT60 H: – make USB bootable

Finaly copy your Windows 7 or Windows 8 DVD contents to the USB flash drive.

Novation LaunchKey 25 MK2 Arduino USB-MIDI converter

IMG_20180406_230723

 

Since I leave Ableton and switch to HW only setup I needed to make a classic midi out port to my LK. I found solution for older version of LK here: https://www.youtube.com/watch?v=IllVybz_2_8 but it is only for MK1 not for my MK2.

Solution is make USB-host to MIDI converter.

You need Arduino Pro mini and mini USB-host module with MAX3421E. I use library from Oleg Mazurov and Yuuichi Akagawa USB_Host_Shield_2.0 but I had to do little improvement of code because my PID od LK wasn’t in special known devices so LK wasn’t working until my change. Link to my update is below.

!!! IMPORTANT !!!

USB host mini module can’t run at 5V !!!!

USB host mini board doesn’t have 3.3V regulator – that is why I used two step down regulators – first bigger is for 12v>5V only for VBUS – You must scratch path to separate system voltage level from VBUS level – some boards have jumper pads for it but I haven’t. Second step down regulator is for 3.3V to power arduino and USB board itself.

My change is in file usbh_midi.cpp:
/* Setup for well known vendor/device specific configuration */
void USBH_MIDI::setupDeviceSpecific()
{
// Novation
if( vid == 0x1235 ) {
// LaunchPad's endpoint attirbute is interrupt (0x20:S, 0x36:Mini, 0x51:Pro, 0x69:MK2, 0x7b:Launchkey)
if(pid == 0x20 || pid == 0x36 || pid == 0x51 || pid == 0x69 || pid == 0x7b ) {
bTransferTypeMask = 2;
}
}
}

Here is usefull links:

https://www.circuitsathome.com/usb-host-shield-hardware-manual/

https://github.com/felis/USB_Host_Shield_2.0

https://github.com/felis/USB_Host_Shield_2.0/pull/375/commits/71e905e0d8e3985e8e0454bbc6b88cd71b0c5b8b

 

IMG_20180406_230752 IMG_20180406_230351

ESP8266 NodeMCU 1.0 + RF 433MHz transmitter + wireless outlet + Blynk

Hello, there is very fast and impresive project for home IoT. One night during normal browsing I find arduino library for controll 433MHz wireless outlet which is laying around for few years without usefull task. After few minutes I completed all need parts from drawer and put all together. Afer half of hour I had functional 2ch android controlled sockets. Good think to implement to project is Wifimanger library for easy SSID/pass change without reprogram ESP. In this fast project I omited it…

https://github.com/sui77/rc-switch

https://github.com/tzapu/WiFiManager

http://www.ebay.com/itm/433Mhz-WL-RF-Transmitter-Receiver-Module-Link-Kit-for-Arduino-ARM-MCU-Wireless-/380717845396?hash=item58a48d4b94:g:x9cAAMXQigBSMp4X

Screenshot_2016-03-17-23-38-26

20160317_230920

/**************************************************************
* Blynk is a platform with iOS and Android apps to control
* Arduino, Raspberry Pi and the likes over the Internet.
* You can easily build graphic interfaces for all your
* projects by simply dragging and dropping widgets.
*
*   Downloads, docs, tutorials: http://www.blynk.cc
*   Blynk community:            http://community.blynk.cc
*   Social networks:            http://www.fb.com/blynkapp
*                               http://twitter.com/blynk_app
*
* Blynk library is licensed under MIT license
* This example code is in public domain.
*
**************************************************************
* This example runs directly on ESP8266 chip.
*
* You need to install this for ESP8266 development:
*   https://github.com/esp8266/Arduino
*
* Change WiFi ssid, pass, and Blynk auth token to run 🙂
*
**************************************************************/

#define BLYNK_PRINT Serial    // Comment this out to disable prints and save space
#include <ESP8266WiFi.h>
#include <BlynkSimpleEsp8266.h>

//——– rcswitch——
#include <RCSwitch.h>
RCSwitch mySwitch = RCSwitch();

// You should get Auth Token in the Blynk App.
// Go to the Project Settings (nut icon).
char auth[] = „dlaskjdlaskjdlasdjjasld“; //insert here your token generated by Blynk

void setup()
{
Serial.begin(9600);
Blynk.begin(auth, „Internet“, „Secretpass123“); //insert SSID…

mySwitch.enableTransmit(4);  //D2 on NodeMCU module

}

void loop()
{
Blynk.run();
}

//——-rcswitch——
BLYNK_WRITE(0) {  //virtual pin 0
mySwitch.switchOn(„01111“, „10000“);
}

BLYNK_WRITE(1) {
mySwitch.switchOff(„01111“, „10000“);
}

BLYNK_WRITE(2) {
mySwitch.switchOn(„01111“, „01000“);
}

BLYNK_WRITE(3) {
mySwitch.switchOff(„01111“, „01000“);
}

MCU controlled constant power load – battery discharger arduino + ESP8266

There is my DIY discharging device. Design is inspired from site (big thanks):

Building a Constant Current/Constant Power Electronic Load

I added ACS712 current measure module and ESP8266 for mail alert, when discharge is complete and result report via blynk mail widget.

Another improvement is paralel cables for precise measure load volage.

Update: uploaded arduino sketch with my library folder, wireless AC socket for charger controll is added! look at photo!

20160318_234219

20160318_234237

ESP8266_load load_libraries

 

 

Alcoma ASD + Wine + USB serial

Pokud potrebujete provozovat ASD Clienta pod linuxem ve Wine, zde je navod:

So, here is what I did to make it work. First of all, unless you want to run Wine each time as root, add yourself to the dialout group, so you can access serial ports without root permissions. This can be done from Terminal:

sudo adduser <your_username> dialout

You should log off and back in for the changes to take effect. This affects not only Wine, but all other Linux application that need serial port access.

The first step is to make the necessary symbolic links. Again, in Terminal:

ln -s /dev/ttyUSB0 ~/.wine/dosdevices/com1
ln -s /dev/ttyS0 ~/.wine/dosdevices/com2

Adapt these commands for your situation. The first one is needed if you use a serial to USB adapter while the second one is for hardware motherboard ports. Add a symbolic link for each of the available serial ports. This command actually gives access to serial ports from Wine. And any Windows software where you can manually edit the serial port will work with only this. However many Windows apps allow user to select a port from a detected ports list. And they will detect nothing in Wine.

Now you need to add a Wine registry key as stated on Strangen0tes blog. Although you could use Wine’s regedit, it is easier to launch a text editor and add the required registry key(s). In Terminal:

gedit ~/.wine/system.reg

What you should add here is not clearly known, so you should try with the following options from Wine Wiki until you find something that works.

This is the common option that works with most applications:

[Hardware\\Devicemap\\Serialcomm] 1231984861
"Serial0"="COM1"

The other one is:

[Hardware\\Devicemap\\Serialcomm] 1131331688
"COM1"="COM1"

Both worked for me. Yet there may be apps that don’t read this registry key when looking for serial ports.

The association between COMx and /dev/ttyX is made in the symbolic link you made earlier.

CM5024Z Raspberry Pi rs-232 solar controller python script

I bought 50A PWM solar controller from ebay for power my shack. Controller have RS-232, so let’s it connect to raspi and read voltage!

File with protocol details and example:

CM30_COM

Device photo:

solar_controller

#!/usr/bin/python
import serial, sys
ser = serial.Serial('/dev/ttyUSB0', 9600)

command = "\x01\x10\x00\x00\x00\x00\x2B"

ser.open() # !!! in new version PySerial need comment
ser.flushInput() #clear buffer
ser.write(command) #send prepared command
#time.sleep(1) #maybe solve problems 
skip=ser.read(2) #skip first two bytes
byte3=ser.read(1)
byte4=ser.read(1)
ser.close()

value1=ord(byte3)
value2=ord(byte4)

voltage=(value2 * 256 + value1) / 100
voltage_modulo=(value2 * 256 + value1) % 100

#print(repr(byte3))
#print(repr(byte4))

sys.stdout.write(str(voltage))
sys.stdout.write('.')
sys.stdout.write(str(voltage_modulo)