A single 77 byte sysex message sets the text for a single line. Each line on the LCD has 68 characters. The sysex message format looks like (in decimal format):
Code: Select all
240 71 127 21 {line} 0 69 0 {ASCII char1} {ASCII char2} ... {ASCII char68} 247
24 for line 1 of the LCD
25 for line 2
26 for line 3
27 for line 4
For the ASCII characters, the value must be between 0 and 127. From 32-126, it matches standard ASCII character sets (http://www.asciitable.com/). The other values are various other characters. All 128 numbers in this range are printable on the LCD (unlike standard ASCII).
Patchers speak louder than words, so try the patch below for yourself. Note, this only works in stand-alone Max/MSP. Live & Max for Live do not allow you to send sysex messages (unless you hack on the Python remote scripts, but the point of all this is to avoid that and just use Max).
There is one workaround for the lack of sysex support in Live that I know of:
- Create a patcher in stand-alone Max/MSP
- Setup your midiin/midiout in the stand-alone patcher to talk to the Push
- Add a send or receive object
- Create a MFL device with a corresponding send/receive object
- Leave the MFL device open for edit
Anyway, here's the patcher (only works in stand-alone Max/MSP!):
Code: Select all
----------begin_max5_patcher----------
2128.3oc2a01aiaiD9yN+JlZb.2cn4xJRQ819kCK59kBr8PAtOtcQfrEiM2H
KYHQkjsE8+dGRJ4UxVxVwRVwn.VNH7MM7gy7vY3P+G2La9hzW34yg2CeFlM6
OtY1LcQpBlU9+yluI7kkwg45lMOg+b5huN+VSUR9KRcwwogQa344fUUUIEaD
IwbotajuWXZgb+REQ5w.G2+Cop6OjlHSB2v007gLQXbUMlAP9ssbibOeN7kx
p1FJWtVjr59L9RooVG66rtEHV9p+3QUeSstyZWWTumbwuqGKBVspz+7laTec
6HAI4b4v.EWuwFUHtd24nPBMr3StDvxxzMa3IxCvk+WpDdNM6QTh9uvGSKVD
ygkwhkOBx0hbHLIB1D9HGxKx3fP9O0.HHSwpwFllolEvu7ye7mgsoYx6pF+X
QBeYZQh9kv5Oda0Bd6dZ79grUKzc+tpAXQwBbpT+E0l5HiovZGGGsZoip6fK
aZP9O8Seb9v.F14.Ls.CdNJ0OhimZ5ayL5hSCH7gnvMvuTjkE9M7cRrg0R41
2+t2sRHWWr3NrauKDaxW2naRqZWzgAhViEH5En0dHVFyWMlZaOIjaY3bjC5+
sMvf1JXPODLb7OGpsaOA8lskqV+h5a.nKA8lhZObE+UL8agY24hwryb0lVTM
cCwebm6p0cdj3PiKkTB4oa3RkXAq4Y7WAiCqE.x4bLVZUiQnHC5uxCiZPNMQ
sywTd1MTYn3I4Y2ySBK2InptG4eaSZjoGiHW1+G2XLDVTjrbMj9.rbMJBKQI
H+8Cim2Yr34cIFaOiSXArIz8qsZ1o6ko2m+sb9KCyCLG6w1Nkg9hpnn70XRO
Pl5CEOqDOJADr0hX9S3BuHMo1TX17vsaqU7rZcQgheMUOPt2tqHQhoHxthx3
OIp5OcWogY3DRhyFzIMMT7hu6bSk3J2MUcsZ1R0VQtl8qX58qX90ls3Z7p3z
kOxipoQhP5VdhHYaFOG09CkkRwtpi3ODVDKuucnpY8ODtj2YmacAc17UYhnz
DkPznmphqdcHgaomb0mL5VjDtskNmiyih7EgYJTsjknBVmKSSiaV0tERzFHL
QrITxkBivRs1MnhMayDFeS1UlgDZc9xrz33FCkolmZolHbsdI+YQjbcCSaUM
XyEaqVBluCihDq34xlkICWk2rjFgYVWIrtwcixOJCXSKcUDCXrAIv1h3XjG7
AcjBOHxxkfqeMVw58tMG55jfnaVyChe0p9KoacqVYP6bOcGeydQd0BZntidc
RkNqhNszv7LQ+FTr6A9xTw7tfO6NgOR6vme+QuCnaiEJ8vubbnzP25YXfb2m
z8MDG+8XHGCBliZrcBmzNgSZ6vo2.fyF9Icb3rTwz0dpwyiwJrMLBdFioCx2
hT+4pCPfmnOSAE6Po26f5.GjPLOr2bE1iFWg6EfpfYY3HHkAXqWeXdWGTEaw
MCivXR9aymNURXudkjNXDYCwDtmluVZ+xr0tNAtSn8qQhmOZVTMVP5b9Ro54
qwmTpydS2JNEs+Ki3bUOs5bpZ8Z0KHixJ+P.hu6tqR0uCu6zuZU8siP4oEYK
qD5RG.flhA54oTjry4+OuyrXu1sVDE0zWai6o4JmcMgUzqUyWqD60SIld0Hw
rdJwdWMRLomRr+HIwvWtodjryyCehGcO9FP6m6CkxLwhBoQkudP3CMdySGO6
qHHrVEhi7x65khwkuHLt7XG102Vh06luChC6nT24vvZdbbpJWQwQ+vvNmUl2
k57aLAQ3QtDGyZWG6mxxAXC6H9ntiZpbnNAsGR0EGGrGHN3Lt3fM6MBGnCDG
F2T6UlY42.bfLPbvdbSwoO8xgCcbx2+XGXP+YKYmAao97GO4Ewv1xb3UzKQJ
eyBiDoqxRK1dTcfzGdPckLTHhSegDO6Ac8SLZAt9ZUBKZso8wxZjPx2T8hpJ
qBhpxU1SgwEMZPcea9LVZ0GiOMiiF1pPYWa.Q6al8HryMyu8IIdkZarxClxn
tQ5RcydTogx3a4gR8wLkiSKPuDoNcI0I2mC+qvD.6lHiCYoOqxampke5m93+
9BbYCXi1kMfV+JaTlJuw9xFzkif+CB72kO8+5J0a5Za2w14VWW2ZahSCL4.e
j8tEmWK3Yuhcqa45iXSNycpP9iEgIq5CJTpx6XcvV3nDK1Troto2Yb2.PPoZ
THTuQLA3JdnjHfxrv3STiMx.B32VfavPumlTqwWmSCyLqx6cg+TdWAZGpbGG
nZzuSqLW50FT4LJPEIXrgJpI0ouIPE59V1.wiQ2JytjLiYtWNdSvMiaGdv7A
V.xiBNDvghtnghA33.NtfiG35fT.fqmxQITSxSqd4QAOavigQSAdtfmG34Cd
AfuE3S.eJ3aC9Lv2A7cAeOv2G7Cf.KHf.ATHvFBXPfCD3BAdPfODDf9eagOD
ke33iM9vvGG7wEe7T2UbUJQ.BAaGAaGAaGAaGgoxqF9fsifsifsifsihsipL
EnWfM2G8Ctp7JY4PLNHSuHas2tAQYB.oe+z3NOyB1kxpvR6niG6smOkMJ7o1
WleMEuIroaDXv8ER32l+AzAJYZB7qE4qgOIdhC+ZZl72lOv673owpin43YBK
x290fH51zL6YF.Z+7iTBSGOuHckEG6FM5fDhbXxPNX8puhydupNxbGa5jmdH
Npig.HSh331G4wwaxfGG+9HOSm5i5tdeZ4we5jG69tdQtdjmITel4cco+rGy
xQvmIRd5i3XMYhi5XhtlTer6ytW6IzWT4oOadMYRCkbcINVWUhi5fBtlDm9X
paOshC8DhydJXWb4w9Txi0zJOjSwDFLcxSeLtbNSwwDjwd+NfTRxd+9e1629
yg+te5527C9d9ya9K6H4MdB
-----------end_max5_patcher-----------